package cn.zxd.member.customer.dao;

import cn.zxd.member.customer.vo.*;

import java.util.Map;
import java.util.List;

/**
 * Created by DaoCreator (daoInterface.jt)
 */
public interface CustomerDao {
//#appendbegin
    //==============CustDict==============
    public void insertCustDict(CustDict vo);
    public void updateCustDict(CustDict vo);

    public void deleteCustDict(CustDict vo);
    public void deleteCustDictByPrimaryKey(String sn );
    public void deleteCustDictByParam(Object... param);
    public void deleteCustDictByParam(Map<String, Object> param);

    public CustDict getCustDictByPrimaryKey(String sn );
    
    public int getCustDictCountByPrimaryKey(String sn );
    public int getCustDictCountByParam(Object... param);
    public int getCustDictCountByParam(Map<String, Object> param);

    public List<CustDict> getCustDictListByParam(String orderBy, Object... param);
    public List<CustDict> getCustDictListByParam(int page, int count, String orderBy, Object... param);
    public List<CustDict> getCustDictListByParam(String orderBy, Map<String, Object> param);
    public List<CustDict> getCustDictListByParam(String orderBy, Map<String, Object> param, int page, int count);
    public List<CustDict> getAllCustDictList(String orderBy);
    //==============end of CustDict==============	
//#appendend   

    //==============Customer==============
    public void insertCustomer(Customer vo);
    public void updateCustomer(Customer vo);

    public void deleteCustomer(Customer vo);
    public void deleteCustomerByPrimaryKey(String sn );
    public void deleteCustomerByParam(Object... param);
    public void deleteCustomerByParam(Map<String, Object> param);

    public CustomerSO getCustomerByPrimaryKey(String sn );
    
    public int getCustomerCountByPrimaryKey(String sn );
    public int getCustomerCountByParam(Object... param);
    public int getCustomerCountByParam(Map<String, Object> param);

    public List<CustomerSO> getCustomerListByParam(String orderBy, Object... param);
    public List<CustomerSO> getCustomerListByParam(int page, int count, String orderBy, Object... param);
    public List<CustomerSO> getCustomerListByParam(String orderBy, Map<String, Object> param);
    public List<CustomerSO> getCustomerListByParam(String orderBy, Map<String, Object> param, int page, int count);
    public List<CustomerSO> getAllCustomerList(String orderBy);
    //==============end of Customer==============	



    //==============Customer_Contact==============
    public void insertCustomerContact(CustomerContact vo);
    public void updateCustomerContact(CustomerContact vo);

    public void deleteCustomerContact(CustomerContact vo);
    public void deleteCustomerContactByPrimaryKey(String sn );
    public void deleteCustomerContactByParam(Object... param);
    public void deleteCustomerContactByParam(Map<String, Object> param);

    public CustomerContact getCustomerContactByPrimaryKey(String sn );
    
    public int getCustomerContactCountByPrimaryKey(String sn );
    public int getCustomerContactCountByParam(Object... param);
    public int getCustomerContactCountByParam(Map<String, Object> param);

    public List<CustomerContact> getCustomerContactListByParam(String orderBy, Object... param);
    public List<CustomerContact> getCustomerContactListByParam(int page, int count, String orderBy, Object... param);
    public List<CustomerContact> getCustomerContactListByParam(String orderBy, Map<String, Object> param);
    public List<CustomerContact> getCustomerContactListByParam(String orderBy, Map<String, Object> param, int page, int count);
    public List<CustomerContact> getAllCustomerContactList(String orderBy);
    //==============end of Customer_Contact==============	



    //==============Customer_LinkMan==============
    public void insertCustomerLinkMan(CustomerLinkMan vo);
    public void updateCustomerLinkMan(CustomerLinkMan vo);

    public void deleteCustomerLinkMan(CustomerLinkMan vo);
    public void deleteCustomerLinkManByPrimaryKey(String sn );
    public void deleteCustomerLinkManByParam(Object... param);
    public void deleteCustomerLinkManByParam(Map<String, Object> param);

    public CustomerLinkMan getCustomerLinkManByPrimaryKey(String sn );
    
    public int getCustomerLinkManCountByPrimaryKey(String sn );
    public int getCustomerLinkManCountByParam(Object... param);
    public int getCustomerLinkManCountByParam(Map<String, Object> param);

    public List<CustomerLinkMan> getCustomerLinkManListByParam(String orderBy, Object... param);
    public List<CustomerLinkMan> getCustomerLinkManListByParam(int page, int count, String orderBy, Object... param);
    public List<CustomerLinkMan> getCustomerLinkManListByParam(String orderBy, Map<String, Object> param);
    public List<CustomerLinkMan> getCustomerLinkManListByParam(String orderBy, Map<String, Object> param, int page, int count);
    public List<CustomerLinkMan> getAllCustomerLinkManList(String orderBy);
    //==============end of Customer_LinkMan==============	



    //==============Customer_Car==============
    public void insertCustomerCar(CustomerCar vo);
    public void updateCustomerCar(CustomerCar vo);

    public void deleteCustomerCar(CustomerCar vo);
    public void deleteCustomerCarByPrimaryKey(String sn );
    public void deleteCustomerCarByParam(Object... param);
    public void deleteCustomerCarByParam(Map<String, Object> param);

    public CustomerCar getCustomerCarByPrimaryKey(String sn );
    
    public int getCustomerCarCountByPrimaryKey(String sn );
    public int getCustomerCarCountByParam(Object... param);
    public int getCustomerCarCountByParam(Map<String, Object> param);

    public List<CustomerCar> getCustomerCarListByParam(String orderBy, Object... param);
    public List<CustomerCar> getCustomerCarListByParam(int page, int count, String orderBy, Object... param);
    public List<CustomerCar> getCustomerCarListByParam(String orderBy, Map<String, Object> param);
    public List<CustomerCar> getCustomerCarListByParam(String orderBy, Map<String, Object> param, int page, int count);
    public List<CustomerCar> getAllCustomerCarList(String orderBy);
    //==============end of Customer_Car==============	



    //==============Customer_Driver==============
    public void insertCustomerDriver(CustomerDriver vo);
    public void updateCustomerDriver(CustomerDriver vo);

    public void deleteCustomerDriver(CustomerDriver vo);
    public void deleteCustomerDriverByPrimaryKey(String sn );
    public void deleteCustomerDriverByParam(Object... param);
    public void deleteCustomerDriverByParam(Map<String, Object> param);

    public CustomerDriver getCustomerDriverByPrimaryKey(String sn );
    
    public int getCustomerDriverCountByPrimaryKey(String sn );
    public int getCustomerDriverCountByParam(Object... param);
    public int getCustomerDriverCountByParam(Map<String, Object> param);

    public List<CustomerDriver> getCustomerDriverListByParam(String orderBy, Object... param);
    public List<CustomerDriver> getCustomerDriverListByParam(int page, int count, String orderBy, Object... param);
    public List<CustomerDriver> getCustomerDriverListByParam(String orderBy, Map<String, Object> param);
    public List<CustomerDriver> getCustomerDriverListByParam(String orderBy, Map<String, Object> param, int page, int count);
    public List<CustomerDriver> getAllCustomerDriverList(String orderBy);
    //==============end of Customer_Driver==============	



    //==============Customer_Agent==============
    public void insertCustomerAgent(CustomerAgent vo);
    public void updateCustomerAgent(CustomerAgent vo);

    public void deleteCustomerAgent(CustomerAgent vo);
    public void deleteCustomerAgentByPrimaryKey(String sn );
    public void deleteCustomerAgentByParam(Object... param);
    public void deleteCustomerAgentByParam(Map<String, Object> param);

    public CustomerAgent getCustomerAgentByPrimaryKey(String sn );
    
    public int getCustomerAgentCountByPrimaryKey(String sn );
    public int getCustomerAgentCountByParam(Object... param);
    public int getCustomerAgentCountByParam(Map<String, Object> param);

    public List<CustomerAgent> getCustomerAgentListByParam(String orderBy, Object... param);
    public List<CustomerAgent> getCustomerAgentListByParam(int page, int count, String orderBy, Object... param);
    public List<CustomerAgent> getCustomerAgentListByParam(String orderBy, Map<String, Object> param);
    public List<CustomerAgent> getCustomerAgentListByParam(String orderBy, Map<String, Object> param, int page, int count);
    public List<CustomerAgent> getAllCustomerAgentList(String orderBy);
    //==============end of Customer_Agent==============	



    //==============Customer_Agent_Log==============
    public void insertCustomerAgentLog(CustomerAgentLog vo);
    public void updateCustomerAgentLog(CustomerAgentLog vo);

    public void deleteCustomerAgentLog(CustomerAgentLog vo);
    public void deleteCustomerAgentLogByPrimaryKey(String sn );
    public void deleteCustomerAgentLogByParam(Object... param);
    public void deleteCustomerAgentLogByParam(Map<String, Object> param);

    public CustomerAgentLog getCustomerAgentLogByPrimaryKey(String sn );
    
    public int getCustomerAgentLogCountByPrimaryKey(String sn );
    public int getCustomerAgentLogCountByParam(Object... param);
    public int getCustomerAgentLogCountByParam(Map<String, Object> param);

    public List<CustomerAgentLog> getCustomerAgentLogListByParam(String orderBy, Object... param);
    public List<CustomerAgentLog> getCustomerAgentLogListByParam(int page, int count, String orderBy, Object... param);
    public List<CustomerAgentLog> getCustomerAgentLogListByParam(String orderBy, Map<String, Object> param);
    public List<CustomerAgentLog> getCustomerAgentLogListByParam(String orderBy, Map<String, Object> param, int page, int count);
    public List<CustomerAgentLog> getAllCustomerAgentLogList(String orderBy);
    //==============end of Customer_Agent_Log==============	


}
